1. Field of the Invention
The present invention relates to a substrate processing apparatus for performing a predetermined process on substrates (or wafers) including a semiconductor substrate, a glass substrate for a liquid crystal display device, a glass substrate for a photomask, a substrate for an optical disk and the like.
2. Description of the Background Art
There has been proposed a substrate processing method known as a “flex flow” which is capable of efficiently successively processing a plurality of lots different in transport sequence (or process flow) in a substrate processing apparatus for performing a series of processes on substrates by transporting the substrates to a plurality of processing units.
The conventional flex flow technique reduces time loss by connecting the processes of successive lots A and B different in transport sequence to each other without interruption under conditions of no interference between the process of the lot A loaded earlier and the process of the lot B loaded later if there is a processing unit (e.g., a heating processing unit) the use of which is shared between the lots A and B. An example of the conventional flex flow technique is disclosed in Japanese Patent Application Laid-Open No. 7-283094 (1995). A lot loaded earlier is referred to hereinafter as a “preceding lot,” and a lot loaded immediately subsequently to the preceding lot is referred to hereinafter as a “succeeding lot.”
A typical substrate processing apparatus comprises an indexer for carrying a substrate into and out of a cassette. A substrate transfer position is established in the indexer, and a substrate in a cassette is placed in the transfer position. A transport robot for transporting a substrate to processing units receives the substrate in the transfer position, circulates among the processing units while carrying substrates into and out of each processing unit and transporting a substrate to the next processing unit, and then returns to the transfer position again. The conventional flex flow technique controls the timing of the transport of substrates from a cassette to the transfer position to control the timing of the transfer of the substrates from the cassette to the transport robot, thereby processing the successive lots A and B without interruption. The substrate transport control in the conventional flex flow is described with reference to FIG. 14.
FIG. 14 shows an example of substrate transport cycles in the conventional flex flow. The reference characters “ID,” “HP,” “CP,” and “SC” designate an indexer, a heating processing unit, a cooling processing unit, and a resist coating processing unit, respectively. The term “transport cycle” refers to a cycle of operation during which the transport robot starting from the substrate transfer position in the indexer circulates among the processing units and then returns to the substrate transfer position again.
Substrates A1 to A6 belonging to the preceding lot A are subjected to a series of processes by following a transport sequence such that each substrate is carried out of the indexer, transported to the heating processing unit, the cooling processing unit, the resist coating processing unit in the order named, and then carried into the indexer. Substrates B1 to B4 belonging to the succeeding lot B are subjected to only a heating process by following a transport sequence such that each substrate is carried out of the indexer, transported to the heating processing unit, and then carried into the indexer.
In the second transport cycle (denoted as “2”) as shown in FIG. 14, the transport robot receives the substrate A5 belonging to the preceding lot A placed in the transfer position in the indexer, and transports the substrate A5 to the heating processing unit. Because the substrate A4 is present in the heating processing unit at this time, the substrate A5 is carried into the heating processing unit after the substrate A4 is carried out of the heating processing unit. The transport robot transports the substrate A4 carried out of the heating processing unit to the cooling processing unit, and changes places between the substrate A3 present in the cooling processing unit and the substrates A4 transported by the transport robot. Next, the transport robot transports the substrate A3 carried out of the cooling processing unit to the resist coating processing unit, and changes places between the substrate A2 present in the resist coating processing unit and the substrate A3 transported by the transport robot. Then, the transport robot places the substrate A2 carried out of the resist coating processing unit in the transfer position in the indexer. After receiving the substrate A2 subjected to a series of processes, the indexer stores the substrate A2 into a cassette. Then, the indexer takes the last substrate A6 belonging to the preceding lot out of the cassette to place the substrate A6 in the transfer position.
In the third transport cycle (denoted as “3” in FIG. 14), the transport robot receives the substrate A6 placed in the transfer position in the indexer, transports the substrate A6 to the heating processing unit, and changes places between the substrate A6 and the substrate A5 present in the heating processing unit. The transport robot transports the substrate A5 carried out of the heating processing unit to the cooling processing unit, and changes places between the substrate A5 and the substrate A4 present in the cooling processing unit. Then, the transport robot transports the substrate A4 carried out of the cooling processing unit to the resist coating processing unit, and changes places between the substrate A4 and the substrate A3 present in the resist coating processing unit. Next, the transport robot places the substrate A3 carried out of the resist coating processing unit in the transfer position in the indexer. After receiving the processed substrate A3, the indexer stores the substrate A3 into the cassette.
Thereafter, the indexer unconditionally takes a substrate out of the cassette and places the substrate in the transfer position if the substrate belongs to the same lot as its preceding substrate. However, the substrate to be processed next is a substrate belonging to the succeeding lot B different in transport sequence from the preceding lot A. This creates a possibility that transferring the first substrate B1 belonging to the lot B subsequently to the substrate A6 to the transport robot causes interference between the transport of the substrate B1 and the transport of the substrates belonging to the lot A in the subsequence transport cycles. To prevent the interference, a controller (referred to hereinafter as a “transport controller”) for controlling the transport of the substrates in the substrate processing apparatus performs the virtual transport of the first substrate B1 belonging to the lot B to judge whether or not the interference between the transport of the substrate B1 and the transport of the substrates belonging to the preceding lot A occurs before the completion of all transport of the substrate B1 in a previously determined transport sequence. Based on the result of the judgment, the transport controller controls the actual transport of the substrates.
In this example, if the assumption is made that the substrate B1 is placed subsequently to the substrate A6 in the transfer position, the transport robot receives the substrate B1 and transports the substrate B1 to the heating processing unit in the fourth transport cycle (denoted as “4” in FIG. 14). Because no substrates belonging to the preceding lot A are transported to the heating processing unit in the fourth transport cycle, no interference occurs between the transport of the substrate B1 and the transport of the substrates belonging to the preceding lot A. Further virtual transport of the substrate B1 results in the transport of the substrate B1 into the indexer in the fifth transport cycle (denoted as “5” in FIG. 14). In the fifth transport cycle, the interference occurs between the transport of the substrate B1 and the transport of the substrate A5 belonging to the preceding lot A because the substrate A5 is transported into the indexer.
The transport controller performs the above-mentioned virtual transport therein to judge whether or not the interference occurs between the transport of the substrate B1 and the transport of the substrates belonging to the preceding lot A. In the above-mentioned example, because the virtual transport of the substrate B1 subsequent to the substrate A6 results in the interference in the fifth transport cycle, the transport controller causes the indexer to stop taking the substrate B1 out of the cassette, and executes the actual fourth transport cycle.
In the actual fourth transport cycle, the transport robot, which can receive no substrate from the indexer, transports no substrate to the heating processing unit, but takes the substrate A6 out of the heating processing unit and transports the substrate A6 to the cooling processing unit. The transport robot changes places between the substrate A6 and the substrate A5 present in the cooling processing unit, and transports the substrate A5 to the resist coating processing unit. Then, the transport robot changes places between the substrate A5 and the substrate A4 present in the resist coating processing unit, and transports the substrate A4 to the indexer. After receiving the substrate A4, the indexer stores the substrate A4 into the cassette.
Prior to the start of the fifth transport cycle, the transport controller performs the virtual transport of the substrate B1 belonging to the lot B again to judge whether or not the interference between the transport of the substrate B1 and the transport of the substrates belonging to the preceding lot A occurs before the completion of all transport of the substrate B1. In this step, if the assumption is made that the substrate B1 is taken out of the cassette and placed in the transfer position, the transport robot receives the substrate B1 and transports the substrate B1 to the heating processing unit in the fifth transport cycle. Because no substrates belonging to the preceding lot A are transported to the heating processing unit in the fifth transport cycle, no interference occurs between the transport of the substrate B1 and the transport of the substrates belonging to the preceding lot A. Further virtual transport of the substrate B1 results in the transport of the substrate B1 into the indexer in the sixth transport cycle (denoted as “6” in FIG. 14). In the sixth transport cycle, the interference occurs between the transport of the substrate B1 and the transport of the substrate A6 belonging to the preceding lot A because the substrate A6 is transported into the indexer. Therefore, the transport controller causes the indexer to stop taking the substrate B1 out of the cassette again, and executes the actual fifth transport cycle.
In the actual fifth transport cycle, after the substrate A5 taken out of the resist coating processing unit is carried into the indexer, the indexer stores the substrate A5 into the cassette. In this step, the transport controller performs the virtual transport of the substrate B1 belonging to the succeeding lot B again to judge whether or not the interference occurs between the transport of the substrate B1 and the transport of the substrates belonging to the preceding lot A. In this example, if the assumption is made that the substrate B1 is taken out of the cassette and placed in the transfer position, the substrate B1 is transported to the heating processing unit in the sixth transport cycle. Because no substrates belonging to the preceding lot A are transported to the heating processing unit in the sixth transport cycle, no interference occurs between the transport of the substrate B1 and the transport of the substrates belonging to the preceding lot A. Further virtual transport of the substrate B1 results in the transport of the substrate B1 into the indexer in the seventh transport cycle (denoted as “7” in FIG. 14). In the seventh transport cycle, no substrates belonging to the preceding lot A are transported to the indexer, because the last substrate A6 belonging to the preceding lot A is carried into the indexer in the sixth transport cycle. Therefore, no interference occurs between the transport of the substrate B1 and the transport of the substrate A6.
In this manner, if the virtual transport of the substrate B1 to the final destination results in no interference between the transport of the substrate B1 and the substrates belonging to the preceding lot A, the transport controller allows the indexer to take out the substrate B1, and executes the actual sixth transport cycle.
In the sixth transport cycle, the transport robot receives the substrate B1 from the transfer position and transports the substrate B1 to the heating processing unit. Next, the transport robot moves to the resist coating processing unit in which the last substrate A6 belonging to the preceding lot A is present, takes the substrate A6 out of the resist coating processing unit, and carries the substrate A6 into the indexer. The indexer stores the substrate A6 into the cassette. Then, the indexer takes the next substrate B2 out of the cassette and places the substrate B2 in the transfer position.
In the seventh transport cycle, the transport robot receives the substrate B2 from the indexer and transports the substrate B2 to the heating processing unit. Then, the transport robot changes places between the substrate B2 and the substrates B1 present in the heating processing unit, and carries the substrate B1 into the indexer. The indexer stores the substrate B1 into the cassette, and takes the substrate B3 out of the cassette. Thereafter, a similar operation is repeated.
As described above, the conventional substrate processing apparatus controls the timing of the transfer of the substrates to the transport robot to achieve the flex flow. For the actual transport of the first substrate belonging to the succeeding lot, it is necessary to consider the transport cycles required until the completion of all transport of the first substrate belonging to the succeeding lot. This increases the complexity of the substrate transport control in the substrate processing apparatus, thereby to make the substrate processing apparatus more likely to malfunction.